package com.syx.migration.utils;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ClassUtil;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;

import java.lang.reflect.Constructor;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * @author Administrator
 * @date 2024/6/6 9:50
 * @description: 简单map工具类
 */
public class MapUtils {

    /**
     * map列表转单个map
     */
    public static Map<String, Object> mapList2Map(List<Map<String ,Object>> list){
        if (CollUtil.isEmpty(list)){
            return null;
        }
        return list.get(0);
    }

    /**
     * 单个map转列表
     */
    public static <T> List<T> singleMap2List(List<Map<String, Object>> list, Class<T> clazz,  String key){
        if (CollUtil.isEmpty(list)){
            return null;
        }
        JSONArray jsonArray = new JSONArray();
        list.forEach(item ->{
            jsonArray.add(item.get(key));
        });
        return JSONUtil.toList(jsonArray, clazz);
    }
}
